﻿using GrainManage.Data.Model;
using GrainManage.Data.Model.Filter;
using GrainManage.Data.Model.Table;
using GrainManage.Data.Model.View;
using System.Collections.Generic;

namespace GrainManage.Data.Service.Interfaces
{
    public interface IContactService
    {
        bool IsContactExist(string name, string cellphone, string creator);

        ContactTable Get(int contactID, string creator);

        List<ContactWithUrlView> Search(bool isOr, ContactFilter filter, IPageable page, ICountable records, string creator);

        int Insert(ContactTable contact);

        List<int> Insert(List<ContactTable> contacts);

        int Update(ContactTable contact);

        List<int> Update(List<ContactTable> contacts);

        int Delete(int id, string creator);

        List<int> Delete(List<int> idList, string creator);
    }
}
